<?php
namespace Home\Model;
use Think\Model\RelationModel;

class UserPacketModel extends RelationModel 
{
    protected $_link = array(
                'Packet'=>array(
                    'mapping_type'=> self::BELONGS_TO,
                    'mapping_name'=> 'packet',
                    'class_name'=> 'Packet',
                    'foreign_key'=>'packetid'
                ),
    );
    
    protected $_auto = array (
        array('createdate','date',1,'function',array('Y-m-d H:i:s')),
    );
    protected $_validate = array(
        array('uid','require','用户ID不能为空！'), //默认情况下用正则进行验证
        array('packetid','require','福利主键不能为空！'), //默认情况下用正则进行验证
        array('incomefrom',array(0,1,2),'来源范围4不正确！！',1,'in'), // 1=签到，2=平台活动,0=其他
        array('is_use_dep',array(1,2),'可用类型值范围不正确！',1,'in'), // 1=不可直接作为用户金额，2=可以直接作为用户提现金额
        array('status',array(1,2),'使用状态值范围不正确！',1,'in'), // 1=未使用，2=已使用
    );
    
    /**
     * 插入用户福利
     * @param unknown $arry
     * @return number|unknown
     */
    public function inst_userPackets($arry)
    {
        $UserOperalog = D("user_packet");
        foreach ($arry as $key => $value){
            $data[$key] = $value;
        };
        $result["status"]=0;
        if (!$UserOperalog->create($data)){
            $result["mess"]=$UserOperalog->getError();
        }else{
            $result = $UserOperalog->add(); // 写入数据到数据库
            if($result){
                $result["status"]=1;
                $result["mess"]=$result;
            }
        };
        return $result;
    }
    
    /**
     * 查询用户福利
     * @param unknown $arry
     * @return mixed|boolean|string|NULL|unknown|object
     */
	public function get_userPackets($arry)
	{
		foreach ($arry as $key => $value){
	        $condition[$key] = $value;
	    };
        return $this->relation(true)->where($condition)->select();
	}
	
	/**
	 * 查询用户福利数量
	 * @param unknown $arry
	 * @return mixed|boolean|string|NULL|unknown|object
	 */
	public function count_userPackets($arry)
	{
	    foreach ($arry as $key => $value){
	        $condition[$key] = $value;
	    };
	    return $this->where($condition)->count();
	}
}
?>